1. Technical Field
The present invention relates in general to improved data processing systems and in particular to methods and systems for improved efficiency in data updating within a data processing system. Still more particularly, the present invention relates to improvements in the efficiency of disk storage system input-output performance.
2. Description of the Related Art
Data processing systems are well known in the art. Data stored within such data processing system is typically stored either within solid state memory devices such as Random-Access-Memory or within magnetic media, such as tape or disk storage systems. In the design of a data processing system the system designer must constantly trade off speed of access and cost when considering the maintaining of data within storage. For example, integrated circuit memory chips are increasingly less expensive; however, the cost of maintaining a particular amount of memory in integrated circuit memory chips is substantially greater than the cost for a similar amount of memory in a tape or disk storage system. However, access times for data stored within a tape or disk storage system are substantially greater than access times for data which is stored within Random-Access-Memory. Thus, modern system designers have often attempted to minimize the number of disk storage input/output operations which must take place during the processing of a particular application in order to maintain application speed at the highest possible level.
One technique known in the prior art for increasing the efficiency of an application is the so-called "Lazy Write" strategy, which is widely used in many disk cache designs. The Lazy Write strategy involves placing data to be written to the disk storage system in a memory cache for a defined period of time before the actual updating of the data on the physical disk block occurs. By postponing disk write operations, these operations are not performed in the time-critical path and the performance of the data processing system utilizing such a strategy is greatly enhanced over the write through strategy which requires at least one immediate disk access for each write request.
While the Lazy Write strategy greatly enhances the efficiency of input/output performance of disk storage systems in data processing systems it is not entirely efficient in sector-based disk systems. In such systems, disk granularity requires that only a fixed size data block may be read from or written to each disk during an input/output operation. These systems do not enjoy all of the efficiency of a Lazy Write cache write strategy in that an attempt to write less than the minimum data block of data to the disk requires that the non-updated data from the disk be read into cache memory before the execution of a write operation. This requirement is due to the fact that an attempt to write the minimum size data block to the disk system will overwrite any non-updated data within the data block. Several common cases in which this occurs are situations in which an application attempts a partial write, that is, a write of less than the fixed size data block permitted by disk system granularity or write which is less than the granularity permitted by the Lazy Write strategy in the writing to a disk system. The effectiveness and performance of the Lazy Write operation is therefore significantly degraded, due to the requirement for additional read requests in such sector-based disk systems.
It should therefore be obvious that a need exists for a method and system whereby input/output performance may be enhanced for sector-based disk storage systems within a data processing system.